$(function () {
    fillNewsTypeOption();
    getNews();
    $("#title").change(function () {
        if ($("#title").val() != "")
            $("#title_tips").html("");
    });
    $("#title").blur(function () {
        if ($("#title").val() == "")
            $("#title_tips").html("请输入新闻标题");
    });
    $("#content").change(function () {
        if ($("#content").val() != "")
            $("#content_tips").html("");
    });
    $("#content").blur(function () {
        if ($("#content").val() == "")
            $("#content_tips").html("请输入新闻内容");
    });
})
var content_editor;

function contentEditor() {
    let E = window.wangEditor;
    content_editor = new E('#content_editor');
    let content = $('#content');
    content_editor.config.onchange = function (html) {
        // 第二步，监控变化，同步更新到 textarea
        content.val(html);
    };
    // 配置 server 接口地址
    content_editor.config.uploadImgServer = '/editor/upload';
    content_editor.config.showLinkImg = false;//隐藏网络图片按钮
    content_editor.config.uploadFileName = "img";//向后端传递参数接收的字段名

    content_editor.config.withCredentials = true;
    // 将图片大小限制为 5M
    content_editor.config.uploadImgMaxSize = 5 * 1024 * 1024;
    // 限制一次最多上传 5 张图片
    content_editor.config.uploadImgMaxLength = 5;

    content_editor.config.uploadImgHooks = {

        // 图片上传并返回了结果，图片插入已成功之后触发
        success: function (xhr) {
            console.log('success', xhr)
        },
        // 图片上传并返回了结果，但图片插入时出错了
        fail: function (xhr, editor, resData) {
            console.log('fail', resData)
        },
        // 上传图片出错，一般为 http 请求的错误
        error: function (xhr, editor, resData) {
            console.log('error', xhr, resData)
        },
        // 上传图片超时
        timeout: function (xhr) {
            console.log('timeout');
        },
        // 图片上传并返回了结果，想要自己把图片插入到编辑器中
        // 例如服务器端返回的不是 { errno: 0, data: [...] } 这种格式，可使用 customInsert
        customInsert: function (insertImgFn, result) {
            // 图片上传并返回结果，自定义插入图片的事件（而不是编辑器自动插入图片！！！）
            // result 即服务端返回的接口
            console.log('customInsert', result.url);

            // insertImgFn 可把图片插入到编辑器，传入图片 src ，执行函数即可
            insertImgFn(result.url);
            // result 必须是一个 JSON 格式字符串！！！否则报错
        }
    };
    content_editor.create();

    // 第一步，初始化 textarea 的值
    content.val(content_editor.txt.html());
}

//填充新闻类型下拉框
function fillNewsTypeOption() {
    $.ajax({
        url: '/back/news/type',
        type: 'get',
        dataType: 'json',
        success: function (data) {
            $("#newstype").html("");
            $.each(data.newstype, function (i, newstype) {
                $("#newstype").append("<option value='" + newstype.id + "'>" + newstype.name + "</option>");
            })
        }
    })
}

//获取新闻
function getNews() {
    contentEditor();
    let id = sessionStorage.getItem("newsid");//接收js跨界面传来的值
    let data = myAjax('/back/news/info', 'get', {"id": id}, 'json');
    $("#title").val(data.news.title);
    $("#newstype").find("option[value=" + data.news.newsType.id + "]").attr("selected", true);
    $("#content").val(data.news.content);
    content_editor.txt.html(data.news.content);
}

//新闻修改
function editNews() {
    let title = $("#title").val();
    let newstype = $("#newstype").find("option:selected").val();
    let content = $("#content").val();
    if (title == "" || content == "") {
        if (title == "")
            $("#title_tips").html("请输入新闻标题");
        if (content == "")
            $("#content_tips").html("请输入新闻内容");
    } else {
        let data = {
            "id": sessionStorage.getItem("newsid"),
            "title": title,
            "newstype": newstype,
            "content": content
        };
        let result = myAjax('/back/news/manage', 'post', '', 'text');
        if (result == 1) {
            alert("修改成功！");
            $(".right").load("../html/back/news/news.html");
        } else if (result == 0) {
            alert("修改失败！");
        } else {
            console.log(data);
        }
    }
}